//
//  AppDelegate.h
//  TestDemo
//
//  Created by yutao on 14-2-11.
//  Copyright (c) 2014年 yutao. All rights reserved.
//

#import <UIKit/UIKit.h>

//程序的生命周期是指应用程序启动到应用程序结束整个阶段的全过程
//每一个IOS应用程序都包含一个UIApplication对象，IOS系统通过该UIApplication对象监控应用程序生命周期全过程
//每一个IOS应用程序都要为其UIApplication对象指定一个代理对象，并由该代理对象处理UIApplication对象监测到的应用程序生命周期事件。

//IOS应用程序5种状态
//1.Not running:应用还没有启动，或者应用正在运行但是途中被系统停止
//2.Inactive:当前应用正在前台运行，但是并不接收事件（当前或许正在执行其它代码）。一般每当应用要从一个状态切换到另一个不同的状态时，中途过渡会短暂停留在此状态。唯一在此状态停留时间比较长的情况是：当用户锁屏时，或者系统提示用户去响应某些（诸如电话来电、有未读短信等）事件的时候。
//3.Active:当前应用正在前台运行，并且接收事件。这是应用正在前台运行时所处的正常状态。
//4.Background:应用处在后台，并且还在执行代码。大多数将 要进入Suspended状态的应用，会先短暂进入此状态。然而，对于请求需要额外的执行时间的应用，会在此状态保持更长一段时间。另外，如果一个应用要求启动时直接进入后台运行，这样的应用会直接从Notrunning状态进入Background状态，中途不会经过Inactive状态。比如没有界面的应用。注此处并不特指没有界面的应用，其实也可以是有界面的应用，只是如果要直接进入background状态的话，该应用界面不会被显示。
//5.Suspended:应用处在后台，并且已停止执行代码。系统自动的将应用移入此状态，且在此举之前不会对应用做任何通知。当处在此状态时，应用依然驻留内存但不执行任何程序代码。当系统发生低内存告警时，系统将会将处 于Suspended状态的应用清除出内存以为正在前台运行的应用提供足够的内存。


@interface AppDelegate : UIResponder <UIApplicationDelegate>

@property (strong, nonatomic) UIWindow *window;

@end
